package com.yunxi.otd.service;

import com.github.pagehelper.PageInfo;
import com.yunxi.core.web.ApiResult;
import com.yunxi.core.web.LoginInfo;
import com.yunxi.otd.pojo.MonthPlanDetailVO;
import com.yunxi.otd.pojo.MonthPlanImportDTO;
import com.yunxi.otd.pojo.MonthPlanVO;

import java.util.List;

/**
 * <p>
 * 月度需求计划 服务类
 * </p>
 *
 * @author XUQI
 * @since 2019-05-06
 */
public interface MonthPlanDubboService {
    /**
     * 分页查询月度生产计划
     *
     * @param monthPlanVO 月度生产计划VO
     * @param pageNum     页数
     * @param pageSize    每页行数
     * @return
     */
    PageInfo pageByVo(MonthPlanVO monthPlanVO, Integer pageNum, Integer pageSize);

    /**
     * 根据月度计划CODE查询月计划明细
     *
     * @param monthPlanCode 月度生产计划CODE
     * @return
     */
    List<MonthPlanDetailVO> findMonthPlanDetailByCode(String monthPlanCode);

    /**
     * 导入：新增月度生产计划
     *
     * @param importDTO DTO
     */
    ApiResult importMonthPlan(MonthPlanImportDTO importDTO, LoginInfo info);

    /**
     * 修改明细
     * @param detailVO 明细VO
     */
    ApiResult modifyMonthPlanDetail(MonthPlanDetailVO detailVO, LoginInfo info);


    /**
     * 下发月度计划
     * @param monthPlanId
     */
    ApiResult sendMonthPlan(String monthPlanId, LoginInfo info);

}
